Without limiting the general scope of the invention, its background is described in connection with computer graphics, as one example only.
In computer graphics systems the low cost of dynamic random access memories (DRAM) has made it economical to provide a bit map or pixel map memory for the system. In such a bit map or pixel map memory a color code is stored in a memory location corresponding to each pixel to be displayed. A video system is provided which recalls the color codes for each pixel and generates a raster scan video signal corresponding to the recalled color codes. Thus, the data stored in the memory determines the display by determining the color generated for each pixel (picture element) of the display.
The requirement for a natural looking display and the minimization of required memory are conflicting. In order to have a natural looking display it is necessary to have a large number of available colors This requires a large number of bits for each pixel in order to specify the particular color from among a large number of possibilities. However, the provision of a large number of bits per pixel requires a large amount of memory for storage. Since a number of bits must be provided for each pixel in the display, even a modest sized display would require a large memory. Thus, it is adavantageous to provide some method to reduce the amount of memory needed to store the display while retaining the capability of choosing among a large number of colors.
The provision of a circuit called a color palette enables a compromise between these conflicting requirements. The color palette stores color data words that are longer in bit length than color codes that are stored in the pixel map memory instead of the actual color data words themselves. The color data words can specify colors to be displayed in a form that is ready for digital-to-analog conversion directly from the palette. The color codes stored in the memory for each pixel have a limited number of bits, thereby reducing the memory requirements. The color codes are employed to select one of a number of color registers or palette locations. Thus, the color codes do not themselves define colors but instead identify a selected palette location. These color registers or palette locations each store color data words which are longer than the color codes in the pixel map memory. The number of such color registers or palette locations provided in the color palette is equal to the number of selections provided by the color codes. For example a four-bit color code can be used to select 2-to-the-n or sixteen palette locations. The color data words can be redefined in the palette from frame to frame to provide many more colors in an ongoing sequence of frames than are present in any one frame.
Due to the advantages of the color palette devices, systems and methods, any improvements in their implementation are advantageous in computer color graphics technology.